The present invention relates in general to computer input devices and in particular to a method and apparatus for inputting spatial coordinate data to a computer.
The advent of interactive computer graphics systems has spurred the development of a variety of devices for enabling a user to easily input spatial coordinate data into a computer. For instance to define a straight line to be drawn on a screen by a computer, one can use a keyboard to input to a graphics computer the endpoint coordinates of the line with reference to a coordinate system known to the computer. However this method is slow and difficult to use and more recently developed interactive computer graphics systems include some means such as a "mouse", "joystick", or digitizing tablet for permitting a user to move a cursor displayed on a screen and to indicate screen coordinates by depressing a button when the cursor is in the desired screen location.
A typical "mouse" comprises a chassis containing a ball, with a part of the ball protruding through the underside of the chassis. When an operator moves the mouse about on a flat surface, the ball rotates. Sensors in the chassis detect the rotation of the ball about two perpendicular, horizontal axes and a computer can determine the displacement of the center of the ball from a reference point in two-dimensional space from the sensor outputs, the displacement therefore representing a two-dimensional spatial coordinate. Unfortunately the moving parts of such a mouse can become dirty, causing the sensors to incorrectly measure ball rotation. In addition, a mouse requires the use of a relatively large, flat surface on which the ball can roll easily without skipping and such a flat space with a suitable, non-slip surface is not always available near a computer terminal.
A mouse having a cross-hair sighting extension can be used to digitize line drawings, the computer monitoring the coordinates of the mouse as an operator moves the mouse over each line on the drawing while maintaining the cross-hair sight over the line. However such an apparatus is subject to error when the mouse chassis is inadvertently rotated about a vertical axis during a tracing operation since a chassis rotation in any amount causes the cross-hair to move more or less than the center of the ball. For instance when center of the ball is held fixed over a point on a drawing but the cross-hair is rotated about the ball to follow a curved line, the mouse will not indicate any movement at all.
A typical "optical" mouse operates on a pad having a reflective grid on its surface. A light emitting diode on the mouse shines a light beam on the pad which is reflected back to a light sensor on the mouse as the light passes over a grid line, enabling the mouse to detect movement. This type of mouse has no moving parts but the grid lines can wear off in time. An optical mouse cannot be used to trace a line drawing because paper between the mouse and the pad interferes with mouse operation.
Graphics tablets employ a pad with a fine grid of wires periodically conducting electrical pulses. The operator moves a stylus about on the pad, the stylus having a sensor for detecting the pulses, and the position of the stylus on the tablet is determined by the timing of the pulses detected. Graphics tablets don't have moving parts subject to wear or dirt and can digitize drawings without error due to rotation of the stylus. However graphics tablets are relatively expensive.
"Three-dimensional" computer graphics systems have recently been developed. One such system utilizes an electronic polarizing shutter placed over a conventional cathode ray tube (CRT) display screen, the shutter being adapted to polarize the light from the screen in either of two mutually perpendicular directions depending on the state of an externally generated control signal. Two-dimensional views of a three-dimensional image to be displayed are stored in memory, each view being drawn from a slightly different angle. These views are alternately displayed on the screen and the shutter control signal state is synchronized with the rapidly alternating display so that the two images are polarized in different directions. A viewer wearing polarized glasses, with right lens polarized to block one of the images and left lens polarized to block the other image, sees slightly different views of the three-dimensional object in each eye, and these two views give the viewer a realistic visual impression of a three-dimensional object.
The use of this type of three-dimensional graphics display in an interactive graphics system has been limited in part because of the lack of a practical input device enabling a user to easily control the movement of a cursor within the three-dimensional display. Mechanical and optical mice, graphics tablets, joysticks and the like are capable of providing only two-dimensional displacement or spatial coordinate information to a computer. What is needed, and would be useful is a device which can enable a user to input two or three-dimensional spatial coordinate data to a computer and which has no moving parts subject to wear.